// pages/person/person.js

let startY = 0;
let moveY = 0;
let moveDistance = 0;
import request from '../../untils/request'
Page({

  /**
   * 页面的初始数据
   */
  data: {
    userInfo: {},// 用户登录信息
    coverTransform: {},// 移动
    coveTransition: {},// 动画
    recentPlayList: [],// 最近播放记录数据
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    let userInfo = wx.getStorageSync('loginInfo')
    if(userInfo){
      this.setData({
        userInfo: JSON.parse(userInfo)
      })

      // 获取最近播放记录
      this.getLastedPlayRecord(this.data.userInfo.userId)
    }
  },

  // 触摸开始
  handleTouchStart(event){
    // 取消动画
    this.setData({
      coveTransition: ''
    })
    startY = event.touches[0].clientY;
  },
  // 触摸移动
  handleTouchMove(event){
    moveY = event.touches[0].clientY;
    moveDistance = moveY - startY;
    if(moveDistance <= 0){
      moveDistance = 0;
    }
    if(moveDistance >= 80){
      moveDistance = 80;
    }
    this.setData({
      coverTransform: `translateY(${moveDistance}rpx)`
    })
  },
  // 触摸结束
  handleTouchEnd(){
    this.setData({
      coverTransform: `translateY(${0}rpx)`,
      coveTransition:`transform 1s linear`
    })
  },

  // 跳转到登录页面
  toLogin() {
    wx.navigateTo({
      url: '/pages/login/login'
    })
  },

  // 获取最近播放记录
  async getLastedPlayRecord(userId){
    let recentPlayListData = await request('/user/record', {uid: userId, type: 0});
    let index = 0;
    let recentPlayList = recentPlayListData.allData.splice(0, 10).map(item => {
      item.id = index++;
      return item;
    })
    this.setData({
      recentPlayList
    })
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})